if (typeof QSAPI == "undefined") {
	var QSAPI = {
		Widget : {}
	};
} else if (!QSAPI.Widget) {
	QSAPI.Widget = {};
}
QSAPI.Widget.Columns = {
    "Name": {
        "header": QS_Lang.watchlist["name"],
        "dataIndex": "Name",
        "dataType": "string",
        "width": 80,
        "align": "left",
        "ellipsis":true,
        "txt": QS_Lang.watchlist["name"],
        "footer": "Total",
        "val": "Name"
    },
    "Symbol": {
        "header": QS_Lang.watchlist["symbol"],
        "dataIndex": "Symbol",
        "dataType": "string",
        "width": 60,
        "align": "center",
        "txt": QS_Lang.watchlist["symbol"],
        "val": "Symbol"
    },
	"exch": {
        "header": QS_Lang.watchlist["exch"],
        "dataIndex": "exch",
        "dataType": "string",
        "width": 60,
        "align": "center",
        "txt": QS_Lang.watchlist["exch"],
        "val": "exch"
    },
	"of028": {
        "header": QS_Lang.watchlist["of028"],
        "dataIndex": "of028",
        "dataType": "string",
        "width": 60,
        "align": "center",
        "txt": QS_Lang.watchlist["of028"],
        "val": "of028"
    },
	"sta4n": {
        "header": QS_Lang.watchlist["sta4n"],
        "dataIndex": "sta4n",
        "dataType": "string",
        "width": 60,
        "align": "center",
        "txt":  QS_Lang.watchlist["sta4n"],
        "val": "sta4n"
    },
	"sta4j": {
        "header": QS_Lang.watchlist["sta4j"],
        "dataIndex": "sta4j",
        "dataType": "string",
        "width": 60,
        "align": "center",
        "txt": QS_Lang.watchlist["sta4j"],
        "val": "sta4j"
    },
	"sta4l": {
        "header": QS_Lang.watchlist["sta4l"],
        "dataIndex": "sta4l",
        "dataType": "string",
        "width": 60,
        "align": "center",
        "txt": QS_Lang.watchlist["sta4l"],
        "val": "sta4l"
    },
    "Up/Down": {
        "header": "<span class='hide'>"+QS_Lang.watchlist["up/down"]+"</span>",
        "dataIndex": "Up/Down",
        "dataType": "string",
        "width": 20,
        "align": "center",
        "txt": "<span class='hide'>"+QS_Lang.watchlist["up/down"]+"</span>",
        "val": "Up/Down"
    },
    "R/D": {
        "header": "<span class='hide'>"+QS_Lang.watchlist["r/d"]+"</span>",
        "dataIndex": "R/D",
        "dataType": "string",
        "width": 20,
        "align": "center",
        "txt": "<span class='hide'>"+QS_Lang.watchlist["r/d"]+"</span>",
        "val": "R/D"
    },
    "Alert": {
        "header": "<span class='hide'>"+QS_Lang.watchlist["alert"]+"</span>",
        "dataIndex": "Alert",
        "dataType": "html",
        "width": 20,
        "align": "center",
        "txt": "<span class='hide'>"+QS_Lang.watchlist["alert"]+"</span>",
        "val": "Alert"
    },
    "LastPrice": {
        "header": QS_Lang.watchlist["lastprice"],
        "dataIndex": "LastPrice",
        "dataType": "float",
		"align": "right",
        "width": 60,
        "txt": QS_Lang.watchlist["lastprice"],
        "val": "Last"
    },
    "Price": {
        "header": QS_Lang.watchlist["lastprice"],
        "dataIndex": "LastPrice",
        "dataType": "float",
        "align": "right",
        "width": 60,
        "txt": QS_Lang.watchlist["lastprice"],
        "val": "Last"
    },
    "Chg": {
        "header": QS_Lang.watchlist["chg"],
        "dataIndex": "Chg",
        "dataType": "float",
		"align": "right",
        "width": 60,
        "txt": QS_Lang.watchlist["chg"],
        "val": "Chg",
        "className" : 'bold-cell'
    },
    "Chg%": {
        "header": QS_Lang.watchlist["chg%"],
        "dataIndex": "Chg%",
        "dataType": "float",
		"align": "right",
        "width": 60,
        "txt": QS_Lang.watchlist["chg%"],
        "val": "Chg%",
        "className" : 'bold-cell'
    },
    "BidPrice": {
        "header": QS_Lang.watchlist["bidprice"],
        "dataIndex": "BidPrice",
        "dataType": "float",
		"align": "right",
        "width": 60,
        "txt": QS_Lang.watchlist["bidprice"],
        "val": "Bid"
    },
    "BidSize": {
        "header": QS_Lang.watchlist["bidsize"],
        "dataIndex": "BidSize",
        "dataType": "float",
		"align": "right",
        "width": 60,
        "txt": QS_Lang.watchlist["bidsize"],
        "val": "Bid Size"
    },
    "AskPrice": {
        "header": QS_Lang.watchlist["askprice"],
        "dataIndex": "AskPrice",
        "dataType": "float",
		"align": "right",
        "width": 60,
        "txt": QS_Lang.watchlist["askprice"],
        "val": "Ask"
    },
    "AskSize": {
        "header": QS_Lang.watchlist["asksize"],
        "dataIndex": "AskSize",
        "dataType": "float",
		"align": "right",
        "width": 60,
        "txt": QS_Lang.watchlist["asksize"],
        "val": "Ask Size"
    },
    "Volume": {
        "header": QS_Lang.watchlist["volume"],//(mil)
        "dataIndex": "Volume",
        "dataType": "float",
		"align": "right",
        "width": 60,
        "txt": QS_Lang.watchlist["volume"],
        "val": "Volume"
    },
    "RVolume": {
        "header": QS_Lang.watchlist["volume_nounit"],//(mil)
        "dataIndex": "RVolume",
        "dataType": "float",
		"align": "right",
        "width": 120,
        "txt": QS_Lang.watchlist["volume_nounit"],
        "val": "RVolume"
    },
    "LastVolume": {
        "header": QS_Lang.watchlist["lastvolume"],
        "dataIndex": "LastVolume",
        "dataType": "float",
        "align": "right",
        "width": 60,
        "txt": QS_Lang.watchlist["lastvolume"],
        "val": "LastVolume"
    },
    "VWAP": {
        "header": QS_Lang.watchlist["vwap"],
        "dataIndex": "VWAP",
        "dataType": "float",
		"align": "right",
        "width": 60,
        "txt": QS_Lang.watchlist["vwap"],
        "val": "VWAP"
    },
    "OpenPrice": {
        "header": QS_Lang.watchlist["openprice"],
        "dataIndex": "OpenPrice",
        "align": "right",
        "dataType": "float",
        "width": 48,
        "txt": QS_Lang.watchlist["openprice"],
        "val": "OpenPrice"
    },
    "HighPrice": {
        "header": QS_Lang.watchlist["highprice"],
        "dataIndex": "HighPrice",
        "dataType": "float",
		"align": "right",
        "width": 60,
        "txt": QS_Lang.watchlist["highprice"],
        "val": "High"
    },
    "LowPrice": {
        "header": QS_Lang.watchlist["lowprice"],
        "dataIndex": "LowPrice",
        "dataType": "float",
		"align": "right",
        "width": 60,
        "txt": QS_Lang.watchlist["lowprice"],
        "val": "Low"
    },
    "Time": {
        "header": QS_Lang.watchlist["time"],
        "dataIndex": "Time",
        "dataType": "time",
        "dataFormat": "h:mm a",
        "width": 60,
        "isCustom":true,
        "txt": QS_Lang.watchlist["time"],
        "val": "Time"
    },
    "MarketValue": {
        "header": QS_Lang.watchlist["marketvalue"],
        "dataIndex": "MarketValue",
        "dataType": "float",
        "align": "right",
        "width": 60,
        "relatedField":["LastPrice"],
        "isCustom":true,
        "calcMethod" :function(customData){
            //PurchasePrice,NumOfShares,Comm,FxRate
            return customData["NumOfShares"]*customData["LastPrice"]*customData["cfactor"];
        },
        "txt": QS_Lang.watchlist["marketvalue"],
        "val": "MV"
    },
    "P/Lpc": {
        "header": QS_Lang.watchlist["p/lpc"],
        "dataIndex": "P/Lpc",
        "dataType": "float",
		"align": "right",
        "width": 60,
        "isCustom":true,
        "relatedField":["LastPrice"],
        "calcMethod" :function(customData){
            return ((customData["LastPrice"] -customData["PurchasePrice"])*customData["NumOfShares"]*customData["cfactor"]-customData["Comm"])/((customData["PurchasePrice"]*customData["NumOfShares"])*customData["cfactor"] + customData["Comm"]);
        },
        "txt": QS_Lang.watchlist["p/lpc"],
        "val": "P/L %"
    },
    "P/L": {
        "header": QS_Lang.watchlist["p/l"],
        "dataIndex": "P/L",
        "dataType": "float",
		"align": "right",
        "width": 60,
        "isCustom":true,
        "relatedField":["LastPrice"],
        "calcMethod" :function(customData){
            return (customData["LastPrice"] -customData["PurchasePrice"])*customData["NumOfShares"]*customData["cfactor"]-customData["Comm"];
        },
        "txt": QS_Lang.watchlist["p/l"],
        "val": "P/L"
    },
    "NumOfShares": {
        "header": QS_Lang.watchlist["numofshares"],
        "dataIndex": "NumOfShares",
        "dataType": "float",
		"align": "right",
        "width": 60,
        "isCustom":true,
        "txt": QS_Lang.watchlist["numofshares"],
        "val": "Shares"
    },
    "currency": {
        "header": QS_Lang.watchlist["currency"],
        "dataIndex": "currency",
        "dataType": "string",
        "width": 60,
        "align": "left",
        "txt": QS_Lang.watchlist["currency"],
        "val": "Currency"
    },
    "st159": {
        "header": QS_Lang.watchlist["st159"],
        "dataIndex": "st159",
        "dataType": "float",
		"align": "right",
        "width": 100,
        "txt": QS_Lang.watchlist["st159"],
        "val": "Mkt Cap (mil)"
    },
    "performanceId": {
        "sortable": false,
        "dataType": "checkbox",
        "width": 20,
        "align": "left",
        "dataIndex": "performanceId",
        "header": QS_Lang.watchlist["checkbox"],
        renderer: function(txt){
            return '<input key="' + txt + '" type="checkbox">';
        }
    },
    "constituentsLink": {
        "sortable": false,
        "dataType": "link",
        "width": 80,
        "align": "center",
        "dataIndex": "secId",
        "header": QS_Lang.watchlist["constituentsLink"],
        renderer: function(txt){
            return '<a href="javascript:void(0)" value="' + txt + '" class="qs-index-constituents-link">View</a>';
        }
    },
    "os378": {
        "header": QS_Lang.watchlist["os378"],
        "dataIndex": "os378",
        "dataType": "string",
        "width": 40,
        "align": "left",
        "txt": QS_Lang.watchlist["os378"],
        "val": "FYE"
    },
    "st153": {
        "header": QS_Lang.watchlist["st153"],
        "dataIndex": "st153",
        "dataType": "string",
        "width": 60,
        "align": "left",
        "txt": QS_Lang.watchlist["st153"],
        "val": "Industry"
    },
    "la03z": {
        "header": QS_Lang.watchlist["la03z"],
        "dataIndex": "la03z",
        "dataType": "string",
        "width": 60,
        "align": "left",
        "txt": QS_Lang.watchlist["la03z"],
        "val": "Sector"
    },
    "country": {
        "header": QS_Lang.watchlist["country"],
        "dataIndex": "country",
        "dataType": "string",
        "width": 60,
        "align": "left",
        "txt": QS_Lang.watchlist["country"],
        "val": "Country"
    },
    "ClosePrice": {
        "header": QS_Lang.watchlist["closeprice"],
        "dataIndex": "ClosePrice",
        "dataType": "float",
        "width": 60,
		"align": "right",
        "txt": QS_Lang.watchlist["closeprice"],
        "val": "Prev Close"
    },
    "MiddlePrice": {
        "header": QS_Lang.watchlist["middleprice"],
        "dataIndex": "MiddlePrice",
        "dataType": "float",
        "width": 60,
		"align": "right",
        "txt": QS_Lang.watchlist["middleprice"],
        "val": "Mid Price"
    },
    "Spread": {
        "header": QS_Lang.watchlist["spread"],
        "dataIndex": "Spread",
        "dataType": "float",
        "width": 60,
		"align": "right",
        "txt": QS_Lang.watchlist["spread"],
        "val": "Spread"
    },
    "LastMarket": {
        "header": QS_Lang.watchlist["lastmarket"],
        "dataIndex": "LastMarket",
        "dataType": "string",
        "width": 60,
        "txt": QS_Lang.watchlist["lastmarket"],
        "val": "Trade Exch"
    },
    "os060": {
        "header": QS_Lang.watchlist["os060"],
        "dataIndex": "os060",
        "dataType": "float",
        "width": 60,
		"align": "right",
        "txt": QS_Lang.watchlist["os060"],
        "val": "NAV"
    },
    "+/- NAV": {
        "header": QS_Lang.watchlist["+/- nav"],
        "dataIndex": "+/- NAV",
        "dataType": "float",
        "width": 60,
		"align": "right",
        "txt": QS_Lang.watchlist["+/- nav"],
        "val": "+/- NAV"
    },
    "st168": {
        "header": QS_Lang.watchlist["st168"],
        "dataIndex": "st168",
        "dataType": "float",
		"align": "right",
        "width": 60,
        "txt": QS_Lang.watchlist["st168"],
        "val": "52W H"
    },
    "st169": {
        "header": QS_Lang.watchlist["st169"],
        "dataIndex": "st169",
        "dataType": "float",
		"align": "right",
        "width": 60,
        "txt": QS_Lang.watchlist["st169"],
        "val": "52W L"
    },
    "st109": {
        "header": QS_Lang.watchlist["st109"],
        "dataIndex": "st109",
        "dataType": "date",
        "dataFormat": "M-d-yyyy",
        "width": 100,
        "txt": QS_Lang.watchlist["st109"],
        "val": "52W H (Date)"
    },
    "st106": {
        "header": QS_Lang.watchlist["st106"],
        "dataIndex": "st106",
        "dataType": "date",
        "dataFormat": "M-d-yyyy",
        "width": 100,
        "txt": QS_Lang.watchlist["st106"],
        "val": "52W L (Date)"
    },
    "st200": {
        "header": QS_Lang.watchlist["st200"],
        "dataIndex": "st200",
        "dataType": "string",
        "width": 60,
        "txt": QS_Lang.watchlist["st200"],
        "val": "M* Rating"
    },
    "st202": {
        "header": QS_Lang.watchlist["st202"],
        "dataIndex": "st202",
        "dataType": "float",
		"align": "right",
        "width": 60,
        "txt": QS_Lang.watchlist["st202"],
        "val": "Fair Value"
    },
    "st201": {
        "header": QS_Lang.watchlist["st201"],
        "dataIndex": "st201",
        "dataType": "string",
        "width": 60,
        "align": "left",
        "txt": QS_Lang.watchlist["st201"],
        "val": "FV Uncertainty"
    },
    "st181": {
        "header": QS_Lang.watchlist["st181"],
        "dataIndex": "st181",
        "dataType": "string",
        "width": 60,
        "align": "left",
        "txt": QS_Lang.watchlist["st181"],
        "val": "Econ Moat"
    },
    "st206": {
        "header": QS_Lang.watchlist["st206"],
        "dataIndex": "st206",
        "dataType": "string",
        "width": 60,
        "align": "left",
        "txt": QS_Lang.watchlist["st206"],
        "val": "Stewardship"
    },
    "PurchaseDate": {
        "header": QS_Lang.watchlist["purchasedate"],
        "dataIndex": "PurchaseDate",
        "dataType": "date",
        "dataFormat": "M-d-yyyy",
        "width": 60,
        "isCustom":true,
        "txt": QS_Lang.watchlist["purchasedate"],
        "val": "Purchase Date"
    },
    "PurchasePrice": {
        "header": QS_Lang.watchlist["purchaseprice"],
        "dataIndex": "PurchasePrice",
        "dataType": "float",
		"align": "right",
        "width": 60,
        "isCustom":true,
        "txt": QS_Lang.watchlist["purchaseprice"],
        "val": "Purchase Price"
    },
    "Comm": {
        "header": QS_Lang.watchlist["comm"],
        "dataIndex": "Comm",
        "dataType": "float",
		"align": "right",
        "width": 60,
        "isCustom":true,
        "txt": QS_Lang.watchlist["comm"],
        "val": "Fee"
    },
    "st198": {
        "header": QS_Lang.watchlist["st198"],
        "dataIndex": "st198",
        "dataType": "float",
		"align": "right",
        "width": 60,
        "txt": QS_Lang.watchlist["st198"],
        "val": "PE"
    },
    "st263": {
        "header": QS_Lang.watchlist["st263"],
        "dataIndex": "st263",
        "dataType": "float",
		"align": "right",
        "width": 60,
        "txt": QS_Lang.watchlist["st263"],
        "val": "EPS"
    },
    "st408": {
        "header": QS_Lang.watchlist["st408"],
        "dataIndex": "st408",
        "dataType": "float",
		"align": "right",
        "width": 60,
        "txt": QS_Lang.watchlist["st408"],
        "val": "P/B"
    },
    "pm032": {
        "header": QS_Lang.watchlist["pm032"],
        "dataIndex": "pm032",
        "dataType": "float",
		"align": "right",
        "width": 60,
        "txt": QS_Lang.watchlist["pm032"],
        "val": "Div Yld"
    },
    "sta65": {
        "header": QS_Lang.watchlist["sta65"],
        "dataIndex": "sta65",
        "dataType": "float",
		"align": "right",
        "width": 60,
        "txt": QS_Lang.watchlist["sta65"],
        "val": "Pro Yld"
    },
    'AccountName': {
        "header": QS_Lang.watchlist["account name"],
        "dataIndex": "AccountName",
        "dataType": "string",
        "width": 80,
        "isCustom":true,
        "align": "left",
        "txt": QS_Lang.watchlist["account name"],
        "val": "Account Name"
    },
    'Household': {
        "header": QS_Lang.watchlist["household"],
        "dataIndex": "Household",
        "dataType": "string",
        "width": 70,
        "align": "left",
        "isCustom":true,
        "txt": QS_Lang.watchlist["household"],
        "val": "Household"
    },
	'remove':{
        "header": QS_Lang.watchlist["remove"],
        "dataIndex": 'remove',
        "type": 'remove',
        "renderer": '<a href="javascript:void(0)">Remove</a>',
        "width": 20
    },
	'pd003': {
        "header": QS_Lang.watchlist["pd003"],
        "dataIndex": "pd003",
        "dataType": "float",
        "width": 60,
        "align": "right",
        "txt": QS_Lang.watchlist["pd003"],
        "val": "pd003"
    },
	'pd005': {
        "header": QS_Lang.watchlist["pd005"],
        "dataIndex": "pd005",
        "dataType": "float",
        "width": 60,
        "align": "right",
        "txt": QS_Lang.watchlist["pd005"],
        "val": "pd005"
    },
	'pd007': {
        "header": QS_Lang.watchlist["pd007"],
        "dataIndex": "pd007",
        "dataType": "float",
        "width": 60,
        "align": "right",
        "txt": QS_Lang.watchlist["pd007"],
        "val": "pd007"
    },
	'pd009': {
        "header": QS_Lang.watchlist["pd009"],
        "dataIndex": "pd009",
        "dataType": "float",
        "width": 60,
        "align": "right",
        "txt": QS_Lang.watchlist["pd009"],
        "val": "pd009"
    },
	'pm493': {
        "header": QS_Lang.watchlist["pm493"],
        "dataIndex": "pm493",
        "dataType": "float",
        "width": 60,
        "align": "right",
        "txt": QS_Lang.watchlist["pm493"],
        "val": "pm493"
    },
	'pd00d': {
        "header": QS_Lang.watchlist["pd00d"],
        "dataIndex": "pd00d",
        "dataType": "float",
        "width": 60,
        "align": "right",
        "txt": QS_Lang.watchlist["pd00d"],
        "val": "pd00d"
    },
	'pd014': {
        "header": QS_Lang.watchlist["pd014"],
        "dataIndex": "pd014",
        "dataType": "float",
        "width": 60,
        "align": "right",
        "txt": QS_Lang.watchlist["pd014"],
        "val": "pd014"
    },
	'pd00f': {
        "header": QS_Lang.watchlist["pd00f"],
        "dataIndex": "pd00f",
        "dataType": "float",
        "width": 60,
        "align": "right",
        "txt": QS_Lang.watchlist["pd00f"],
        "val": "pd00f"
    },
	'pd00h': {
        "header": QS_Lang.watchlist["pd00h"],
        "dataIndex": "pd00h",
        "dataType": "float",
        "width": 60,
        "align": "right",
        "txt": QS_Lang.watchlist["pd00h"],
        "val": "pd00h"
    },
	'pm494': {
        "header": QS_Lang.watchlist["pm494"],
        "dataIndex": "pm494",
        "dataType": "float",
        "width": 60,
        "align": "right",
        "txt": QS_Lang.watchlist["pm494"],
        "val": "pd00h"
    },
	'pm495': {
        "header": QS_Lang.watchlist["pm495"],
        "dataIndex": "pm495",
        "dataType": "float",
        "width": 60,
        "align": "right",
        "txt": QS_Lang.watchlist["pm495"],
        "val": "pm495"
    },
	'pd00b': {
        "header": QS_Lang.watchlist["pd00b"],
        "dataIndex": "pd00b",
        "dataType": "float",
        "width": 60,
        "align": "right",
        "txt": QS_Lang.watchlist["pd00b"],
        "val": "pd00b"
    }
};
